package com.xsky.logic.service.facade;

import com.xsky.logic.casetype.CaseTypeLogic;
import com.xsky.logic.equiptype.EquipTypeLogic;
import com.xsky.operation.vo.TabCase;
import com.xsky.operation.vo.TabCaseDispatch;

public interface ICesiService {

	// 登录相关
	public String logon(String username, String password);

	// 通用接口
	String getNewBillNo();

	String getNewUUID();

	// 公司相关
	public String addCompany(String xmlStr);

	public String updateCompany(String xmlStr);

	public String deleteCompany(String id);

	public String deleteCompanyById(String id);

	public String genAllCompany();

	// 部门相关
	public String genDepartmentTree(String companyId);

	public String addDepartment(String xmlStr);

	public String deleteDepartment(String id);

	public String updateDepartment(String id);

	public String isEmptyDepartment(String id);

	// 协议相关
	public String addAgreement(String xmlStr);

	public String genAllAgreement();

	public String genAgreementWithCondition(String condition);

	public String deleteAgreement(String xmlStr);

	public String deleteAgreementById(String id);

	// 工程师相关
	public String addEngineer(String xmlStr);

	public String genAllEngineer();

	public String genEngineerWithCondition(String condition);

	public String genEngineerWithConditionForSearch(String condition);

	public String deleteEngineer(String xmlStr);

	public String deleteEngineerById(String id);

	// case 查询case的所有“事件和解决方案描述”
	public String queryCaseAndResolves(String caseId);

	public String addOrUploadCaseDescAndResolves(String xml);

	public String addOrUpdateDispatch(String xml);

	public String addOrUpdateCase(String xml);

	public String queryCase(String xml);

	/*
	 * <data> <上月case总量></上月case总量> <本月case总量></本月case总量> <本周case总量></本周case总量>
	 * <未关闭case总量></未关闭case总量> </data>
	 */
	public String getStatInfo();

	public String addCaseOperateHistory(String xml);

	/**
	 * 返回历史数组的xml
	 * 
	 * @param caseId
	 * @return
	 */
	public String queryCaseOperateHistory(String caseId);

	// Case类型相关
	public String addCaseType(String xmlStr);

	public String genCaseTypeTree();

	public String deleteCaseType(String id);

	public String updateCaseType(String xmlStr);

	public String isEmptyCaseType(String id);// 判断

	// 数据字典相关

	public String addLibraryDir(String xmlStr);

	public String genAllLibraryDir();

	public String genLibraryDirWithCondition(String condition);

	public String deleteLibraryDir(String id);

	public String deleteLibraryDirById(String id);

	public String updateLibraryDir(String xmlStr);

	public String addLibrary(String xmlStr);

	public String genAllLibrary(String parentId);

	public String genLibraryWithCondition(String condition);

	public String deleteLibrary(String xmlStr);

	public String deleteLibraryById(String id);

	public String updateLibrary(String xmlStr);

	public String genFromLibrary(String type);

	public String genAgreementForClient(String condition);

	// 客户相关
	public String addClient(String xmlStr);

	public String genAllClient();

	public String genClientWithCondition(String condition);

	public String deleteClient(String id);

	public String deleteClientById(String id);

	public String updateClient(String xmlStr);

	// 系统公告相关
	public String addNotice(String xmlStr);

	public String genAllNotice();

	public String genNoticeWithCondition(String condition);

	public String deleteNotice(String xmlStr);

	public String deleteNoticeById(String id);

	public String updateNotice(String xmlStr);

	// 角色权限相关
	public String addRole(String xmlStr);

	public String genAllRole();

	public String genRoleWithCondition(String condition);

	public String deleteRole(String id);

	public String deleteRoleById(String id);

	public String updateRole(String xmlStr);

	public String genUserWithRole(String roleId);

	public String genUsersWithRole(String roleId);

	public String addUserRole(String roleId, String users);

	public String deleteUserRole(String roleId, String userId);

	public String deleteUserRoles(String userXml);

	public String genPowerInfo(String roleId);

	public String addAccess(String accessXml);

	public String addRoleAccess(String roleId, String accessXml);

	// 群发设置
	public String addMessageGroup(String xmlStr);

	public String genAllMessageGroup();

	public String genAllUserOfMessageGroup(String users);

	public String genUserNotInMessageGroup(String users);

	public String addMessageGroupUser(String groupId, String userXml);

	public String deleteMessageGroupUser(String xmlStr);

	public String deleteMessageGroupUserById(String groupId, String userId);

	// 升级策略相关
	public String addUpgradeSetting(String xmlStr);

	public String genAllUpgradeSetting();

	public String deleteUpgradeSetting(String xmlStr);

	public String deleteUpgradeSettingById(String id);

	// 设备类型相关
	public String addEquipType(String xmlStr);

	public String genEquipTypeTree();

	public String genUpperEquipType(String id);

	public String deleteEquipType(String id);

	public String updateEquipType(String xmlStr);

	public String isEmptyEuipType(String id);

	// 知识库相关
	String addKnowledge(String xml);

	String updateKnowledge(String xml);

	String deleteKnowledge(String id);

	String getKnowledgeHistorys(String id);

	/**
	 * 分页获取知识库
	 * 
	 * @param xml
	 * @return
	 */
	String getKnowledges(String xml);

	// 平台故障
	String addPlatFault(String xml);

	String queryPlatFault(String xml);

	String updatePlatFault(String xml);

	String deletePlatFault(String id);

	// 这里直接提供String类型
	String getCountOfCurYear();

	String getCountOfCurMonth();

}